<?php
namespace Zxf5115\Laravel\Complain\Models\Api;

use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Zxf5115\Laravel\Complain\Models\Common\Complain as Common;

/**
 * @author zhangxiaofei [<1326336909@qq.com>]
 * @dateTime 2025-10-08
 *
 * 投诉模型类
 */
class Complain extends Common
{
  /**
   * 需要隐藏的字段
   */
  public $hidden = [
    'organization_id',
    'member_id',
    'read_status',
    'status',
    'update_time'
  ];


  // 关联函数 ------------------------------------------------------

  /**
   * 投诉与投诉分类关联函数
   *
   * @return [关联对象]
   */
  public function category() : BelongsTo
  {
    return $this->belongsTo(
      'ApiCategory',
      'category_id',
      'id'
    )->select(['id', 'title']);
  }

  /**
   * 投诉与投诉用户关联函数
   *
   * @return [关联对象]
   */
  public function member() : BelongsTo
  {
    return $this->belongsTo(
      'App\Models\Api\Module\Member',
      'member_id',
      'id'
    );
  }
}
